package org.jsola.hr.entity;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jsola.core.entity.BaseDeleteDO;
import org.jsola.core.entity.Key;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;

/**
 * 转账明细
 *
 * @author zhr
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Table(name = "hr_transfer_accounts_detail")
@Key(UUID = true)
public class TransferAccountsDetailDO extends BaseDeleteDO<String> {

    private static final long serialVersionUID = 1L;

    /**
     * 公司id
     */
    private String companyId;
    /**
     * 业务id
     */
    private String subjectId;
    /**
     * 转账人员库id
     */
    private String peopleId;
    /**
     * 真实姓名
     */
    private String name;
    /**
     * 手机号
     */
    private String phone;
    /**
     * 身份证号
     */
    private String idCard;
    /**
     * 银行卡号
     */
    private String bankId;
    /**
     * 银行名称
     */
    private String bankName;
    /**
     * 到账方式：1:支付宝，2：微信，3：银行
     */
    private Integer type;
    /**
     * 发放账号（支付宝、微信、银行）
     */
    private String identity;
    /**
     * 账号是否绑定
     */
    private Boolean identityBinding;
    /**
     * 是否是平安银行（1：是，0：否）
     */
    private Boolean isPingAnBank;
    /**
     * 是否异地（1：是，2：否）
     */
    private Boolean isOthArea;
    /**
     * 转账金额
     */
    private BigDecimal money;
    /**
     * 转账标题
     */
    private String orderTitle;
    /**
     * 转账备注
     */
    private String remark;
    /**
     * 转账批次id
     */
    private String batchId;
    /**
     * 第三方的明细id
     */
    private String thirdpartyDetailId;
    /**
     * 第三方的内部批次明细id
     */
    private String thirdPartyInteriorDetailId;
    /**
     * 业务状态：1：待申请，2：审批中，3：审批驳回，4：待发放，5：已发放
     */
    private Integer subjectStatus;
    /**
     * 支付状态：1：未支付，2：支付成功，3：支付失败
     */
    private Integer payStatus;
    /**
     * 支付完成时间
     */
    private Date payTime;
    /**
     * 手续费
     */
    private BigDecimal fee;
    /**
     * 失败原因
     */
    private String failCause;
    /**
     * 是否已处理（0：未处理 1：已处理）
     */
    private Boolean isDispose;



}

